Infinity-Join names a function, with lambda list (D USER RECIPIENT/S):
Join a room or place.
Lisp JOIN = JSON join
The “room” form is no longer needed. We no longer have rooms.
The “place” form using latitude and longitude is used instead.
{ c: "join", d: { room: NEW-ROOM, [ from: OLD-ROOM ] } }{ c: "join", d: { lat: LAT, long: LONG, alt: ALT, world: WORLD }}
You may get this reply for joining a place instead:
{ from: "roomJoin", status: true, lat: LAT, long: LONG, alt: ALT, world: WORLD }
This will usually be followed by an rv packet with the local room vars (see TOOTSVILLE LOCAL-ROOM-VARS).
NOTE the inconsistency: the command is join, but the reply comes from roomJoin
Joining a room used to return a packet like:
{ from: "roomJoin", status: true, room: MONIKER }
You will never get this reply in Romance 2.0.
Removed in 2.0.
Attempting to call join a room will always result in
{ from: "roomJoin", status: false, err: "room.notFound", error: "There are no rooms in Tootsville V." }
In Romance 1.2, the room was divided into “rooms.” This is no longer the case, so there is never any need to join a room.
The success and error return codes are documented here for completeness, but only room.notFound will be returned.
The new form, taking latitude and longitude, was added in 2.0.
Defined in file src/infinity/legacy-commands.lisp.